Load-balancing computer clusters improve performance over a single computer and provide more computing power in a cost-effective manner. Computational workload is distributed among nodes in the cluster to provide better overall performance and faster response times. Current methods for load balancing among computer clusters aim to achieve an optimal distribution in which all nodes are equidistant and are thus able to handle the same load. These methods use an external tool to generate equidistant token values and move nodes until those values are reached. However, doing so causes all nodes but one to be moved, thus resulting in a large number of moves and a higher transaction cost, which may be particularly burdensome for large systems. Further, because existing tools assume that nodes are homogenous and are able to handle the same load, these systems do not account for a situation in which a more powerful machine is incorporated into the cluster.